פרק 8: עצים. .(Tree) במשפטים הגדרה: גרף ללא מעגלים נקרא יער. דוגמה 8.1: תרגילים: הקודקודים 2 ו- 6 בדוגמה הוא ).

Σχετικά έγγραφα
חורף תש''ע פתרון בחינה סופית מועד א'

מתמטיקה בדידה תרגול מס' 13

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

ל הזכויות שמורות לדפנה וסטרייך

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

תרגיל 13 משפטי רול ולגראנז הערות

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

Logic and Set Theory for Comp. Sci.

logn) = nlog. log(2n

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

הגדרה: קבוצת פעילויות חוקית היא קבוצה בה כל שתי פעילויות

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

gcd 24,15 = 3 3 =

כלליים זמן: S מחסנית, top(s) ראש המחסנית. (Depth First Search) For each unmarked DFS(v) / BFS(v) רקורסיבי. אלגוריתם :BFS

x a x n D f (iii) x n a ,Cauchy

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

תרגילים באמצעות Q. תרגיל 2 CD,BF,AE הם גבהים במשולש .ABC הקטעים. ABC D נמצאת על המעגל בין A ל- C כך ש-. AD BF ABC FME

אלגוריתמים בתורת הגרפים חלק שני

{ : Halts on every input}

מתמטיקה בדידה תרגול מס' 5

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

אינפי - 1 תרגול בינואר 2012

גבול ורציפות של פונקציה סקלרית שאלות נוספות

אלגברה ליניארית (1) - תרגיל 6

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

פתרון תרגיל 6 ממשוואות למבנים אלגברה למדעי ההוראה.

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

תכנון אלגוריתמים 2016 עבודה 1 שאלה 1 פתרון נתונות שתי בעיות. יש למצוא: אורך מסלול קצר ביותר המתחיל באחד מן הקודקודים s 1,..., s k ומסתיים ב t.

שאלה 1 V AB פתרון AB 30 R3 20 R

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

' 2 סמ ליגרת ןורתפ םיפרגה תרותב םימתירוגלא דדצ 1 : הלאש ןורתפ רבסה תורעה

גרפים אלגוריתמים בתורת הגרפים הרצאה 1 גיא פלג 15 במרץ 2012 הגדרה: מגן דוגמאות: זוגות לא סדורים כיוון שבקבוצה סדר לא חשוב.

הגדרה: מצבים k -בני-הפרדה

תרגול מס' 1 3 בנובמבר 2012

מינימיזציה של DFA מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות

אלגוריתמים / תרגיל #1

תורת הקבוצות תרגיל בית 2 פתרונות

1 תוחלת מותנה. c ארזים 3 במאי G מדיד לפי Y.1 E (X1 A ) = E (Y 1 A )

c ארזים 26 בינואר משפט ברנסייד פתירה. Cl (z) = G / Cent (z) = q b r 2 הצגות ממשיות V = V 0 R C אזי מקבלים הצגה מרוכבת G GL R (V 0 ) GL C (V )

אלגוריתמים בתורת הגרפים חלק ראשון

מבני נתונים ואלגוריתמים תרגול #8-9

מבני נתונים אדמיניסטרציה ד"ר אלכס סמורודניצקי, רוס 210, שני 5:30 4:15. ציון:

co ארזים 3 במרץ 2016

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

מודלים חישוביים תרגולמס 5

תורת הגרפים על פי הרצאות מאת פרופ' אהוד פרידגוט 11 ביולי 2010

אלגברה ליניארית 1 א' פתרון 2

רשימת בעיות בסיבוכיות

מתמטיקה בדידה תרגול מס' 2

תרגול פעולות מומצאות 3

רשימת משפטים והגדרות

, נתונה קבוצה של זוגות מותרים של צבעים בפרק זה נתמקד בשני מקרים מיוחדים של בעית צביעתו של גרף עם אילוצים

מיון. 1 מיון ערימה (Heapsort) חלק I 1.1 הגדרת ערימה 0.1 הגדרה של המושג מיון מסקנה: הערך הכי גבוה בערימה נמצא בשורש העץ!

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

חשבון אינפיניטסימלי 1 סיכום הרצאות באוניברסיטה חיפה, חוג לסטטיסטיקה.

תוכן עניינים I בעיות מיון 2 1 סימון אסימפטוטי... 2 II מבני נתונים 20 8 מבני נתונים מופשטים משפט האב גרפים... 37

אלגברה מודרנית פתרון שיעורי בית 6

3-9 - a < x < a, a < x < a

מודלים חישוביים מבחן מועד א', סמסטר א' תשע''ה (2015)

מבני נתונים ויעילות אלגוריתמים

תורישק :תורישקה תייעבב בוש ןייענ?t- t ל s- s מ לולסמ שי םאה 2

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

. {e M: x e} מתקיים = 1 x X Y

מתכנס בהחלט אם n n=1 a. k=m. k=m a k n n שקטן מאפסילון. אם קח, ניקח את ה- N שאנחנו. sin 2n מתכנס משום ש- n=1 n. ( 1) n 1

סדרות - תרגילים הכנה לבגרות 5 יח"ל

תשובות מלאות לבחינת הבגרות במתמטיקה מועד חורף תשע"א, מיום 31/1/2011 שאלון: מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן.

"קשר-חם" : לקידום שיפור וריענון החינוך המתמטי

חלק א' שאלה 3. a=3, b=2, k=0 3. T ( n) היותר H /m.

פתרונות , כך שאי השוויון המבוקש הוא ברור מאליו ולכן גם קודמו תקף ובכך מוכחת המונוטוניות העולה של הסדרה הנתונה.

מבני נתונים עצים שיעור 7

אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

סיכום חקירת משוואות מהמעלה הראשונה ומהמעלה השנייה פרק זה הינו חלק מסיכום כולל לשאלון 005 שנכתב על-ידי מאיר בכור

Charles Augustin COULOMB ( ) קולון חוק = K F E המרחק סטט-קולון.

מבנים אלגבריים II 27 במרץ 2012

1 סכום ישר של תת מרחבים

התפלגות χ: Analyze. Non parametric test

פרק 5 טורי חזקות 5.5 טור לורן. (z z 0 ) m. c n = 1. 2πi γ (ξ z 0 ) n+1dξ, .a 1 = 1 f(z)dz בפרט,.a 2πi γ m וגם 0 0 < z z 0 < r בעיגול הנקוב z.

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

טענה חשובה : העתקה לינארית הינה חד חד ערכית האפס ב- הוא הוקטור היחיד שמועתק לוקטור אפס של. נקבל מחד חד הערכיות כי בהכרח.

תורת הגרפים - סימונים

מצולעים מצולעהוא צורה דו ממדית,עשויה קו"שבור"סגור. לדוגמה: משולש, מרובע, מחומש, משושה וכו'. לדוגמה:בסרטוט שלפappleיכם EC אלכסוןבמצולע.

תשובות מלאות לבחינת הבגרות במתמטיקה מועד ג' תשע"ד, מיום 0/8/0610 שאלונים: 315, מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן

מבוא ללוגיקה מתמטית 80423

מבחן מועד ב' בהצלחה! אנא קיראו היטב את ההוראות שלהלן: ודאו כי כל עמודי הבחינה נמצאים בידכם.

סיכום לינארית 1 28 בינואר 2010 מרצה: יבגני סטרחוב מתרגלת: גילי שול אין המרצה או המתרגלת קשורים לסיכום זה בשום דרך.

אלגוריתמים 1, סמסטר אביב 2017

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

תרגול משפט הדיברגנץ. D תחום חסום וסגור בעל שפה חלקה למדי D, ותהי F פו' וקטורית :F, R n R n אזי: נוסחת גרין I: הוכחה: F = u v כאשר u פו' סקלרית:

קיום ויחידות פתרונות למשוואות דיפרנציאליות

חשבון אינפיניטסימלי 1

c ארזים 15 במרץ 2017

אלגברה לינארית (1) - פתרון תרגיל 11

קומבינטוריקה על פי הרצאות מאת פרופ' גיל קלעי 19 ביולי = 2 n k. k= ( 1) n n + 1

Transcript:

מבוא לפרק: : עצים.(ree) עצים הם גרפים חסרי מעגלים. כך, כיוון פרק זה הוא מעין הפוך לשני הפרקים הקודמים. עץ יסומן לרב על ידי במשפטים 8.1-8.3 נפתח חלק מתכונותיו, ובהמשך נדון בהיבטים שונים של "עץ פורש" של גרף קשיר. הגדרה: גרף ללא מעגלים נקרא יער. גרף קשיר בלי מעגלים נקרא עץ. דוגמה 8.1: לפניך עץ מסדר 6. תרגילים: הוכיחי: כל עץ הוא גרף זוגי. בין כל שני קודקודים בעץ קיימת מסילה יחידה. (למשל, המסלול היחיד שמחבר את הקודקודים 2 ו- 6 בדוגמה הוא 2-4-5-6)..1.2 - עמוד 1

הגדרה: קודקוד בעץ בעל ערכיות 1 נקרא קודקוד קצה או עלה. צלע קצה היא צלע שאחד מקודקודיו הוא עלה. נקודת חתך בגרף כל שהוא, הוא קודקוד שסילוקו מהגרף (ביחד עם כל הצלעות המחברות אליו) מגדיל את מספר מרכיבי הקשירות של הגרף. בדוגמה 1,2,3,6, 8.1 הם עלים, וכן הקודקודים 4,5 הם נקודות חתך. בפרט, שימי לב שהסרת קודקוד 4 יוצרת תת גרף עם 4 מרכיבי קשירות! שמת לב שבדוגמה, כל קודקוד הוא או עלה או נקודת חתך? מסתבר שהמצב הכללי הוא כמו הדוגמה. תרגיל 3. הוכיחי: בעץ, כל קודקוד הוא או עלה או נקודת חתך. בפרק זה, דיברנו עד כה על הסרת קודקודים (ובעקבות זה, גם צלעות המחוברות אליהם). המשפט הבא נותן אפיון של עץ במונחים של צלעות. משפט 8.1 גרף קשיר הוא עץ כל צלע בו הוא גשר. ניזכר (מפרק 5) שגשר בגרף היא צלע שהסרתה הופכת את תת הגרף הנוצר לגרף שאינו קשיר. תרגיל: 1. הוכיחי שספר מרכיבי קשירות בעץ שממנו הוסרה צלע הוא. 2 - עמוד 2

הוכחת משפט 8.1: : תהא uv צלע בעץ. עלינו להראות ש- uv גשר, זאת אומרת שהגרף על ידי הסרת הצלע, uv הוא גרף לא קשיר. המתקבל מ- -הגרף \ { uv} נניח בשלילה, נניח v ל- u שאינה מכילה את הצלע אינו גשר. אזי תת הגרף uv} ' = \ { נשאר קשיר. לכן, uv כעת, מסילה זו בצירוף הצלע.uv uv : קיימת ב-' מסילה בין היא מעגל ב-, בסתירה! נניח בשלילה שקיים גרף קשיר, אשר כל צלע בו הוא גשר, אך הוא לא עץ. עלינו להגיע לסתירה. כאמור, G גרף אך הוא לא עץ. לכן קיים מעגל ב-. G נביט בצלע כל שהוא uv במעגל. מצד אחד, uv הוא גשר, על פי הנחתינו. לכן u ו- v נמצאים בשני מרכיבי קשירות שונים. אך, מצד שני, המעגל בלי הצלע uv מהווה מסילה בין u ו-! v סתירה זו מוכיחה את הדרוש. המשפט הבא מקשר את מספר הצלעות בעץ עם סדרו: משפט 8.2 יהא > E =< V, עץ. אזי 1 V. E = ואכן, בעץ שבדוגמה 8.1, יש 6 קודקודים, וכן 5=6-1 צלעות. הוכחת משפט 8.2: באינדוקציה על. n = V E = 0 = V 1 ו-. אם = 1 n, אזי K 1 - עמוד 3

עץ מסדר. n נביט בצלע כל שהיא לא קשיר (שכן הורד ממנו גשר) חסר מעגלים (שכן מהווה גשר ב-, ולכן }\ הוא יער-גרף uv} \{ חסר uv} =< V, E יהא עכשיו 2 n, ונניח נכונות לכל עצים מסדר קטן מ-. n יהא > חסר מעגלים, לכן גם על פי משפט uv 8.1. ב- uv מעגלים) בעל 2 מרכיבי קשירות,, 2 1 (למה 2 מרכיבי קשירות?)., ולכן נקבל, על פי הנחת האינדוקציה בכל מרכיב: מספר הקודקודים בכל מרכיב הוא פחות מ- n וכן ) 1. E ) = V ( ( 2 2 E( 1 ) = V ( 1 ) 1 אך מתקיים: א. E = E וכן 1 ( 1 ) + E( 2 ) + uv ) ( V. V = V ) + נציב לקבל : ב. ( 1 2 E( E = E( 1 ) + כדרוש. 2 ) + 1 = V ( 1 ) 1+ V ( 2 ) 1+ 1 = V 1 א ב uv 14243 14243 uv E( 1 ) E( 2 ) מקבלים: התרגיל הבא, שניעזר בו בהמשך, מאפיין את הגרפים הקשירים חסרי המעגלים בעלי התכונה. E = V 1 תרגיל: הוכיחי: יהא גרף קשיר המקיים G =< V, E חסר מעגלים. E אזי > = V 1 G =< V, E >.2 אם ורק אם G מהווה עץ. 2 n, יש לפחות 2 עלים. במשפט הבא נוכיח: בכל עץ מסדר - עמוד 4

משפט 8.3 יהא > E =< V, עץ מסדר 2 n. אזי יש לפחות 2 קודקודי קצה. הוכחת משפט 8.3: נניח בשלילה, ש- > E >= V, עץ מסדר לפחות 2 ובעל לכל היותר קודקוד קצה אחד.. deg v = 2 E = 2( n 1) = 2n ניעזר במשפטים 1.1 ו- 8.2: מתקיים 2 אך, אם על פי הנחת השלילה, מבין אברי v V 1.1 8.2 V יש שפרט אולי לקודקוד אחד, לכל קודקוד אחר יש ערכיות לפחות 2. לכל היותר קודקוד אחד בעל ערכיות 1, זה אומר 1 + 2( n 1) = 2n מזה נקבל, 1 ערכיות שאר הקודקודים לפחות עלה v deg בסתירה! v V עץ פורש של גרף: עץ פורש של גרף הוא מעין "שלד" שלו. מסתבר, (ראי משפט 8.4) שלכל גרף קיים לפחות עץ פורש אחד. נקדים בכמה הגדרות: הגדרה: תת גרף פורש של גרף. G המכיל את כל קודקודי G הוא תת גרף של G דוגמה 8.2:. K n הוא תת גרף פורש של Cn עץ פורש בגרף Gהוא תת גרף פורש של G שהוא גם עץ. דוגמה :8.3. K n הוא עץ פורש של P n.1 2. באיור הבא, הגרף שצלעותיו צבועות בכחול הוא עץ פורש של השריג מגודל 3 3 3, הכוונה לגרף מסדר 16 שקודקודיו מיוצגים על ידי צמתי שריג.(בשריג מגודל 3 מגודל 3 3, וקיימות 24 צלעות בין הקודקודים, לפי החיבורים של צמתי השריג ביניהם). - עמוד 5

3. עץ פורש זה אינו יחיד- שכן, האיור הבא מראה עץ פורש נוסף של השריג. שימו לב שעץ פורש זה איזומורפי לגרף! P16.. 4 ראי נוסחת קיילי בפרק הבא שם נספור את מספר עצי הפרישה השונים של K n בנושא עצי פרישה קיימים שפע של יישומים. למשל, אם מחפשים דרך זולה לקשר בין מסופי מחשב שונים, בין קווי טלפון, בתי חרושת או ערים שונות, הפתרון הוא בדרך כלל סוג של עץ פורש ביניהם. טבעי, אם כן, לשאול את השאלה הבאה: האם לכל גרף קשיר קיים עץ פורש? התשובה היא חיובית, כפי שנראה ממשפט 8.4. - עמוד 6

משפט 8.4 > E G >= V, גרף קשיר. אזי קיים לו עץ פורש. הוכחת משפט 8.4: יהא G גרף קשיר. אם G הוא עץ, אזי G עצמו מהווה עץ פורש כנדרש. אחרת, נתחיל להוריד צלעות, בסדר כל שהוא, בתנאי שבכל שלב, תת הגרף הנוצר נשאר קשיר. בשלב מסוים, נקבל תת גרף קשיר קריטי של G, זאת אומרת, אין צלע נוספת שניתנת לסילוק מבלי להפוך את תת הגרף הנשאר לגרף לא קשיר. נסמן תת גרף זה על ידי. H נשים לב לתכונותיהם של. H H מהווה תת גרף של G מסדר n -שכן הורדנו צלעות מ-, G אך לא קודקודים. כל צלע ב- H היא גשר, שכן H הוא תת גרף קשיר קריטי של שנוריד ממנו יהפוך את תת הגרף הנותר לגרף לא קשיר., G זאת אומרת כל צלע, G קיבלנו. לכן, לפי משפט 8.1, H הוא עץ. היות ו- H הוא תת גרף המכיל את כל קודקודי את הדרוש: H הוא עץ פורש של G מציאת עץ פורש של גרף ממושקל, בעל משקל מינימלי: להלן בעיה יישומית שיש לה השלכות מעשיות במדעי המחשב וביישומים אחרים: האלגוריתם של (1956) Kruskal למציאת עץ פורש של גרף קשיר ממושקל, בעל משקל מינימלי: מהלך האלגוריתם הוא הבא: מתחילים עם -הגרף הריק מסדר n שהוא יער המורכב מ-, n N n עצים איזומורפיים ל-. בכל שלב נבחר את הצלע ב- G בעלת המשקל המינימלי מבין כל K 1 הצלעות שנותרו בגרף ונצרף אותה בכפוף לתנאי שהוספתה אינה יוצרת מעגל. האלגוריתם נעצר כאשר בנינו עץ עם V צלעות.. הנה האלגוריתם בצורה פורמלית: 1 האלגוריתם: נתון: > E G =< V, גרף קשיר ממושקל מסדר. n - עמוד 7

המטרה: לבנות עץ פורש בעל משקל מינימלי, אותו נכנה עץ פורש מינימלי. התהליך:, השלב (0) = N n, G ומסמנים השלב ההתחלתי = 0 i : מתחילים בתת הגרף N n של.1. במילים E = 0 E, ( 0) = N n, G ומסמנים ההתחלתי = 0 i : מתחילים בתת הגרף N של n אחרות, מסדר הוא הגרף ההתחלתי, והוא נטול צלעות, בעוד ש- E 0 הוא אוסף כל n (0) הצלעות של G.. 2 השלב = 1 i : בוחרים צלע e מ- E בעלת משקל מינימלי מבין כל צלעות, E מוסיפים ל- 0 0 1 ( (1), ומסמנים את הגרף הנוצר על ידי את הצלע e (במילים אחרות, = (0) e 1 (1) 1 (0) וכן מסמנים = E. חסר מעגלים. (1) 1 E 0 \ e 1, E וכפוף לתנאי שהגרף 1 1 e 2 : i = 2 בוחרים צלע מ- E בעלת משקל מינימלי מבין כל צלעות.3 חסר מעגלים. (שימו לב שבשלב זה, אין אפשרות עדיין ליצור מעגל, אך. E 2 = E1 \ e2 (2) (1) = e2 התנאי עומד בעינו). מסמנים, (i) 4. חוזרים על שלב 3, עבור, i = s...,3,4 כאשר כל פעם מגדילים את קבוצת הצלעות ל- - בלי שיווצר מעגל באף שלב, עד אשר מגיעים לשלב בו אין יותר אפשרות להוספת צלעות. נוספות בלי ליצור מעגל. גרף "סופי" זה מכונה (i) הערה: נשים לב שמעצם הגדרתו, לכל, 1 i s גרף בעל i צלעות. - עמוד 8

דוגמא 8.4: להלן דוגמה של ביצוע האלגוריתם של Kruskal שלב אחרי שלב. תיאור תמונה האיור מימין מראה גרף ממושקל מסדר 7. ניצור עץ פורש שצלעותיה יסומנו בירוק. הצלעות בעלות המשקל המינימלי הן: CE,AD. AD נבחר מביניהן באופן שרירותי. בחירתה מסומנת על ידי צביעתה בירוק. כעת, CE היא הצלע בעלת משקל מינימלי שטרם נבחרה ושאינה יוצרת מעגל, ולכן היא מסומנת כצלע שניה. - עמוד 9

הצלע "הכי זולה" הבאה, היא DF בעלת משקל 6, ולכן מסומנת. שתי הצלעות הבאות בתור הן AB, ו- BE, שתיהן בעלות משקל 7. בוחרים (באופן שרירותי) מביניהם את. AB שימי לב: כעת הצלע BD מסומנת באדום, לסמן שלא ניתן לבחור אותו באף בחירה בהמשך, שכן הוספתה לעץ היתה יוצרת מעגל.(ABDA) התהליך ממשיך ובו מסמנים את הצלע הכי זולה מבין הצלעות נשארות, דהיינו BE בעלת משקל 7. שימי לב שבשלב זה, עוד הרבה צלעות נוספות מסומנות באדום, (בדקי שאת מבינה למה כל אחת כזאת צבועה כך). כעת התהליך מסתיים עם הוספת הצלע EG ממשקל 9; שימי לב שהוספנו 6 צלעות (כצפוי מעץ מסדר 7), ושהתקבל עץ פורש ממושקל בעל משקל 39 לאנימציה של האלגוריתם של Kruskal על גרפים נוספים, לחצי כאן. - עמוד 10

ניתוח האלגוריתם: אלגוריתם זה מהווה דוגמה של אלגוריתם חמדן Algorithm) (Greedy. הרעיון של אלגוריתם "חמדן" הוא שבכל שלב בוחרים את האפשרות הטובה ביותר הניראית לעין, מבלי לקחת בחשבון את השלכות הבחירה לטווח רחוק. בדרך כלל, אלגוריתם חמדן לא מובטח לתת את התוצאה הטובה ביותר, שכן בחירה "חמדנית" רגעית בשלב מסוים עלולה לגרום, לפעמים, לברירת מחדל פחות טובה בשלב מאוחר יותר. להמחשת העניין, נעיין באיורים הבאים: אלגוריתם חמדן פיתרון אופטימלי שני האיורים מתארים ניסיון לבנות מסילה בעלת אורך הקצר ביותר (במובן האוקלידי הרגיל) העוברת בין 8 הקודקודים המצוינים. לפי האלגוריתם החמדן, הצלע השלישית קצרה יותר מזו שבאיור מתחתיו, אך המסילה הראשונה "משלמת את המחיר לחמדנות שלה" בצלע האחרונה, ובכך אורך המצטבר של צלעות מסילת האלגוריתם החמדן גדול יותר מזה של המסילה מתחתיה, שהיא מהווה הפתרון האופטימלי. החידוש, אם כן, באלגוריתם של, Kruskal הוא שהוא תמיד נותן את הפתרון האופטימלי! במילים אחרות, העץ שנבנה לפי האלגוריתם (החמדן) של,Kruskal תמיד יתן עץ פורש בעל משקל מינימלי. הנה המשפט: - עמוד 11

משפט 8.5 האלגוריתם של Kruskal נותן עץ פורש מינימלי. הוכחה: עלינו להראות G, וכן, א. ב. שהגרף המתקבל מהאלגוריתם של קרוסקל הוא עץ פורש של שלעץ זה משקל מינימלי מבין כל העצים הפורשים את. G. s = n וש- 1,G א. נתייחס לסימנים מהאלגוריתם, ונוכיח כי תת הגרף הוא עץ פורש של הוכחה: קודם נראה, באופן אינדוקטיבי ש- חסר מעגלים.,(הגרף המתקבל מ- על ידי הוספת צלע אחת), הוא חסר מעגלים. נניח כי מעגלים, לפי כללי בנייתה מ- יתר על כן, (1). חסר מעגלים. אזי גם (0) (s 1) ( s 1) הוא קשיר, שכן G הוא קשיר, ואם היה ל- היה אפשר להוסיף לו גשר מהצלעות הנשארות ב יתכן. הוא חסר יותר ממרכיב קשירות אחד,, וכך היינו מגדילים את העץ, דבר שלא E s לבסוף, היות ו- אנו מסיקים ש- G), מכיל את כל קודקודי "כבר" (הרי, G מכילה את כל קודקודי הוא עץ פורש של ממשפט 8.2 נובע ש 1 n. s = Gבעל s צלעות (עייני בהערה לפני דוגמה 8.4). (0) G, דהיינו ש ) = ( s) נוכיח כי ב. הוא עץ פורש מינימלי של )ω הוא המינימלי מבין משקלות כל תת העצים הפורשים של. G לעץ פורש של G בעל משקל מינימלי נקרא עץ פורש אופטימלי.. ω ( ) = ω( עץ פורש אופטימלי של, G עלינו להראות כי אם סיימנו. = ( 1) n ) יהא אחרת, קיימת לפחות צלע אחת ב- שאיננה ב- שהתקבלו. נביט בסידרת צלעות - עמוד 12

e1 e2,..., e n 1 ei = uv ונסמן על ידי, e1 e2 (לפי סדר) מהאלגוריתם,..., את הצלע הראשונה מבין, e n 1. שאיננה ב- G היות ו-. e נביט בגרף, דהיינו זה שמתקבל מ- על ידי הוספת הצלע עץ פורש של i + e i u (שנסמנה על ידי ( המחברת בין ל-, v ולכן מכיל מעגל-אותו נסמן + e i p uv, קיימת מסילה ב- על ידי C -ראי איור.. p uv p uv תהא e צלע ב- שמשקלה מינימלי מבין כל צלעות. G הוא עץ פורש של ' = + e e i טענה: גם הגרף נביט בצלע. e היות ו- e אומרת, הגרף שייכת למעגל בגרף אינו גשר ב- e+ (למה?). זאת פירקה את המעגל היחיד i e, + e חסר מעגלים, (שכן הסרת e i C ' הוא גרף קשיר, = + e i e ' = + e i e ), ובעל שהיה קיים ב- e+ 1 n צלעות. לאור משפט 8.2, אנו מסיקים שהגרף i הוא עץ פורש של G.. ω( ') = ω( ) + ω( ei ) ω( יתר על כן, (e. e נשווה בין משקלות e i ו- מחד, הצלע e i נבחרה באלגוריתם של קרוסקל להיות הצלע בעלת משקל מינימלי מבין כל הצלעות..., e1 לא יוצרת מעגל., e2 בעלות התכונה שצירופה לצלעות 1 i e - עמוד 13

מאידך, גם הצירוף של לצלעות..., e1 לא יוצרת מעגל, שכן כל הצלעות הללו נמצאות בעץ, e2 e i 1 e. (חסר מעגלים). ω( ) ω( לכן, חייב להתקיים: (e e i ω(. אך ') ω( ) נקבל:, ω ( ') = ω( ) + ω( ei ) ω( אי לכך, מהשיוויון (e עץ אופטימלי (בעל משקל מינימלי מבין כל העצים הפורשים), ולכן אי השיוויון האחרון הוא שיוויון, וגם ' עץ אופטימלי! נשים לב שכל הצלעות של נמצאות ב-'. אם גם כל שאר צלעות נמצאות e 1, 1 e 2,... e i, e i, והוכחנו את הדרוש (שכן ' עץ אופטימלי ). אם לא, נחזור על תהליך הצלע הראשונה מבין e1, e2 שלא נמצאת ב-', (הרי היא תהיה הצלע הראשונה מבין,... en 1 ב-', נסיק כי ' = '',שהוא גם אופטימלי e שלא נמצאת ב-', -למה?!!) תוחלף בצלע אחר שהיתה ב- ' כדי ליצור עץ אחר (מאותם השיקולים שמהם הסקנו ש-' אופטימלי). ממשיכים כך,בתהליך e i+ 1, i+2,...e n 1. שמובטח להסתיים, עד שנקבל עץ אופטימלי שמכיל את כל צלעות בכך הוכחנו: אכן אופטימלי. סיכום נושאים ומונחים מ: יער עץ ותכונותיו תת גרף פורש, עץ פורש האלגוריתם של Kruskal - עמוד 14